// 1.引入基础模块

// 2.动态设置请求地址
let URL = ""
if (process.env.NODE_ENV == "development") {
	// 本地开发环境
	URL = "http://localhost:3000"
} else {
	// 线上正式的生成环境
	URL = "http://api.aslegou.top"
}

// 3.按需导出地址
export {
	URL
};


/**
 * 4.定义网络请求方法并默认导出
 * 	options:{
		url:请求地址,
		data:{请求数据},
		method:请求方法 get | post（restfull风格）,
		header:{请求头}
	}
 */
export default (options) => {
	// 组装请求地址：
	let url = URL + '/api/' + options.url
	return new Promise((resolve, reject) => {
		uni.request({
			url,
			method: options.method || 'get',
			data: options.data || {},
			header: options.header || {
				"content-type": "application/json",
				"authorization":uni.getStorageSync('token') || ""
			},
			success: res => {
				let code = res.data.code;
				if (code == 200) {
					// 200代表本次操作成功
					resolve(res.data)
				} else if (code == 403) {
					// 403 登录过期 访问后端地址不对
					uni.removeStorageSync('userInfo')
					uni.removeStorageSync('token')
					// 提示登录
					islogin()
					// 返回错误提示信息
					reject(res.data)
				} else if (code == 500) {
					// 请求参数异常 返回错误提示信息
					reject(res.data)
				}
			},
			fail: err => reject(err)
		})
	})
}
